package com.youlai.boot.modules.content.service;

import com.youlai.boot.modules.content.model.entity.LzTag;
import com.youlai.boot.modules.content.model.form.LzTagForm;
import com.youlai.boot.modules.content.model.query.LzTagQuery;
import com.youlai.boot.modules.content.model.vo.LzCategoryVO;
import com.youlai.boot.modules.content.model.vo.LzTagVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.ArrayList;

/**
 * 标签服务类
 *
 * @author lz006891
 * @since 2025-02-24 19:37
 */
public interface LzTagService extends IService<LzTag> {

    /**
     *标签分页列表
     *
     * @return
     */
    IPage<LzTagVO> getLzTagPage(LzTagQuery queryParams);

    /**
     * 获取标签表单数据
     *
     * @param id 标签ID
     * @return
     */
     LzTagForm getLzTagFormData(Long id);

    /**
     * 新增标签
     *
     * @param formData 标签表单对象
     * @return
     */
    boolean saveLzTag(LzTagForm formData);

    /**
     * 修改标签
     *
     * @param id   标签ID
     * @param formData 标签表单对象
     * @return
     */
    boolean updateLzTag(Long id, LzTagForm formData);

    /**
     * 删除标签
     *
     * @param ids 标签ID，多个以英文逗号(,)分割
     * @return
     */
    boolean deleteLzTags(String ids);

    ArrayList<LzTagVO> getAllLzTags();
}
